event_widget = gtk_get_event_widget (event);
}
+ if (GTK_IS_WINDOW (event_widget))
+ {
+ if (_gtk_window_check_handle_wm_event (event))
+ return;
+ }
+
window_group = gtk_main_get_window_group (event_widget);
device = gdk_event_get_device (event);
return FALSE;
}
+gboolean
+_gtk_window_check_handle_wm_event (GdkEvent *event)
+{
+ GtkWidget *widget;
+
+ widget = gtk_get_event_widget (event);
+
+ if (!GTK_IS_WINDOW (widget))
+ return FALSE;
+
+ if (event->type == GDK_BUTTON_PRESS ||
+ event->type == GDK_2BUTTON_PRESS)
+ return gtk_window_button_press_event (widget, &event->button);
+ else if (event->type == GDK_BUTTON_RELEASE)
+ gtk_window_button_release_event (widget, &event->button);
+ else if (event->type == GDK_MOTION_NOTIFY)
+ return gtk_window_motion_notify_event (widget, &event->motion);
+ else
+ return FALSE;
+}
+
static void
gtk_window_real_activate_default (GtkWindow *window)
{
GtkWindowKeysForeachFunc func,
gpointer func_data);
+gboolean _gtk_window_check_handle_wm_event (GdkEvent *event);
+
/* --- internal (GtkAcceleratable) --- */
gboolean _gtk_window_query_nonaccels (GtkWindow *window,
guint accel_key,